#ifndef __WATCHPOINT_H__
#define __WATCHPOINT_H__

#include "common.h"

typedef struct watchpoint {
	int NO;
	struct watchpoint *next;
	/* 添加监视点相关信息字段 */
    uint32_t addr;      // 监视的内存地址
    uint32_t value;     // 监视的表达式值
    char expr[32];      // 监视的表达式

	/* TODO: Add more members if necessary */


} WP;

void print_watchpoints(void);
WP* new_wp(void);
void free_wp(WP *wp);
WP* set_watchpoint(char *expr, uint32_t value);
bool delete_watchpoint(int no);
bool check_watchpoints(void);
WP* find_wp_by_no(int no);

#endif
